#ifndef __POWER_H
#define __POWER_H

#include "hc32f460.h"
#include "anv_leaks.h"

#define ADC_DEV_NAME        "adc1"
#define ADC_SYSTEM_CHANNEL     8
#define ADC_CLOCK_CHANNEL     9
#define REFER_VOLTAGE       330
#define CONVERT_BITS        4096
#define REAL_VOLTAGE       3
// 自定义 ADC 设备结构体
typedef struct rt_adc_device_t
{
    struct rt_device parent;    // RT-Thread 设备基类
    CM_ADC_TypeDef *hadc;     // 硬件相关 ADC 句柄（如 STM32 的 HAL 库）
    rt_uint8_t channel;         // 当前配置的 ADC 通道
    rt_bool_t initialized;      // 设备初始化标志
}rt_adc_device;

enum 
{
    RT_ADC_CMD_SET_CHANNEL =0,       // 设置通道
    RT_ADC_Power_GET_VALUE,         // 读取 ADC 值
    RT_ADC_RTC_GET_VALUE,
    RT_ADC_ENABLE,            // 启用 ADC
    RT_ADC_DISABLE,           // 关闭 ADC

};

extern void power_thread_entry(void *parameter);

#endif